Single Responsibility Principle
ひとつのモジュールは「変更すべき理由」をただひとつだけ持つべき、という原理
モジュール分割をするときの指針となる原理
SRPに従うならば「変更すべき理由」が異なる場合、たとえ同じコードであっても共通化できない
"A module should have one, and only one, actor"
actor は、そのソフトウェアが満たすべきビジネス要件を持っているユーザーやステークホルダーを指す
例: Employee クラス
経理チームは Employee に対して賃金を計算したい
労務チームは Employee に対して労働時間を計算したい
技術チームは Employee に対してデータベースへの永続化を行いたい
このとき、Employee は3つの actor を持つので、3つのクラスに分解すべき